From 0f6c7682b3a11d932e34a3a0bb078d9b4503de3f Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Thu, 29 Oct 2015 14:55:48 +0100 Subject: [PATCH] Make GtkFileChooser interface require a GObject Before all GtkFileChooser implementations had to be a GtkWidget, but we want to introduce one for native implementations that is not a widget. This is technically an ABI break, because some code could rely on the guarantee that GtkFileChoosers are GtkWidgets and do unchecked GtkWidget calls. However, that does seem unlikely, and this has not really been documented anywhere. --- NEWS | 5 +++++ README.in | 9 +++++++++ gtk/gtkfilechooser.c | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 6ad742eb85..fd720fdb06 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +Overview of Changes in GTK+ 3.19.2 +================================== +* The GtkFileChooser interface prerequisite was changed from GtkWidget + to GObject to allow non-widget filechooser implementations. + Overview of Changes in GTK+ 3.19.1 ================================== diff --git a/README.in b/README.in index 4ff9b32dcf..7e7e6065d8 100644 --- a/README.in +++ b/README.in @@ -72,6 +72,15 @@ and attach the patch to that bug report. Patches should be in unified diff form. (The -up option to GNU diff) Even better are git-formatted patches. (Use git format-patch) +Release notes for 3.20 +====================== + +* The GtkFileChooser interface pre-requisite changed from GtkWidget + to GObject, allowing non-widget implementations of this interface. + This is a minor change in ABI, as apps are no longer guaranteed + that a GtkFileChooser interface also supports all GtkWidget methods. + However, all previously existing objects still derive from GtkWidget, + so no existing code should break. Release notes for 3.18 ====================== diff --git a/gtk/gtkfilechooser.c b/gtk/gtkfilechooser.c index b8513cebb4..5ed25fddd3 100644 --- a/gtk/gtkfilechooser.c +++ b/gtk/gtkfilechooser.c @@ -159,7 +159,7 @@ typedef GtkFileChooserIface GtkFileChooserInterface; -G_DEFINE_INTERFACE (GtkFileChooser, gtk_file_chooser, GTK_TYPE_WIDGET); +G_DEFINE_INTERFACE (GtkFileChooser, gtk_file_chooser, G_TYPE_OBJECT); static gboolean confirm_overwrite_accumulator (GSignalInvocationHint *ihint, -- 2.30.2